package com.example.baseapp.admin.service;

import com.example.baseapp.admin.entity.Menu;

import java.util.List;

/**
 * 菜单表(Menu)表服务接口
 *
 * @author zhanglei
 * @since 2022-04-28 14:24:37
 */
public interface MenuService  {
    /**
     * 新增菜单
     * @param menu 菜单信息
     */
    void insert(Menu menu);

    /**
     * 更新 菜单信息
     * @param menu 菜单信息
     */
    void update(Menu menu);

    /**
     * 物理删除菜单信息
     * @param menuId 菜单信息
     */
    void delete(String menuId);
    /**
     * 通过菜单id查询
     * @param menuId 菜单id
     * @return Menu
     */
    Menu getMenuByMenuId(String menuId);

    /**
     * 批量获取菜单
     * @param menuIdList
     * @return
     */
    List<Menu> getMenuByMenuId(List<String> menuIdList);

    /**
     * 根据父类菜单id获取所有子菜单
     * @param menuParentId
     * @return
     */
    List<Menu> getMenuByMenuParentId(String menuParentId);

}